package com.tracesystem.service;

import com.tracesystem.commons.Result;
import com.tracesystem.controller.Info.AllTypePageInfo;
import com.tracesystem.controller.form.*;
import com.tracesystem.model.IssueType;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author Kevin Martin
 * @since 2022-03-23
 */
public interface IssueTypeService extends IService<IssueType> {

    /**
     * 修改缺陷分类状态
     * @param renewalTypeModuleStateForm
     */
    public Result updateModuleState(RenewalTypeModuleStateForm renewalTypeModuleStateForm);

    /**
     * 修改缺陷分类
     * @param renewalTypeDescForm
     * @return
     */
    public Result updateTypeDesc(RenewalTypeDescForm renewalTypeDescForm);

    /**
     * 根据条件模糊查询缺陷分类
     * @param likeTypeListForm
     * @return
     */
    public Result findPageTypeListByTypeDesc(LikeTypeListForm likeTypeListForm);

    /**
     * 查询全部缺陷分类
     * @param findAllTypeListForm
     * @return
     */
    public Result getAllTypeList(FindAllTypeListForm findAllTypeListForm);

    //添加缺陷分类
    public Result<?> insertType(AddTypeForm addTypeForm);

    //删除
    public Result<?> delectType(RemoveTypeForm removeTypeForm);

    //批量删除
    Result<?> delectTypeList(RemoveTypeListForm removeTypeListForm);
}
